#ifndef __ZAPI_HMI_H__
#define __ZAPI_HMI_H__

typedef void (*Light_Sensor_AdcCallback)(Uint16 result);

// Human-Machine Interface
//
typedef struct ZAPI_HMI {
    void (*KeypadLED_On)();
    void (*KeypadLED_Off)();
    void (*KeypadLED_Level)(unsigned char level);
    void (*LcdBacklight_On)(void);
    void (*LcdBacklight_Off)(void);
    Uint16 (*LcdBacklight_Level)(Uint8 level);
    void (*AddLightSensorCallback)(Light_Sensor_AdcCallback cbk);
    void (*AddKeypadCallback)(
            void (*KeypadPressCallBack)(unsigned char act_key),
            void (*KeypadReleaseCallBack)(unsigned char act_key));
    unsigned char (*KeypadCheckstate)(void);
} ZAPI_HMI;

#endif // __ZAPI_HMI_H__
